package demo18_CAS;

import java.util.concurrent.atomic.AtomicInteger;

/**
 * @author kunkun
 * @className Test02_ABS
 * @Description 测试ABS问题
 * @date 2025/3/8 18:44
 */
public class Test02_ABS {

    public static void main(String[] args) {

        //模拟线程A
        AtomicInteger atomicInteger = new AtomicInteger(2021);

        //A线程操作数据
        System.out.println("A线程操作数据-start："+atomicInteger.compareAndSet(2021, 2030));

        //模拟线程B，中途操作数据
        System.out.println("B线程操作数据-1："+atomicInteger.compareAndSet(2030, 1000));
        System.out.println("B线程操作数据-2："+atomicInteger.compareAndSet(1000, 2030));

        //线程A正常操作数据：使用cas操作内存值
        System.out.println("A线程操作数据-end:"+atomicInteger.compareAndSet(2030, 2099));
    }

}
